/*
 *  Copyright (C) 2005-2007 Renier Roth
 *  www.renier.de
 *
 *  This program is free software; you can redistribute it and/or
 *  modify it under the terms of the GNU General Public License
 *  as published by the Free Software Foundation; either version 2
 *  of the License, or any later version.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with this program; if not, write to the Free Software
 *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 */
package de.renier.jkeepass.actions;

/**
 * ActionManager
 *
 * @author <a href="mailto:software@renier.de">Renier Roth</a>
 */
public class ActionManager {
  
  private static AboutAction aboutAction = new AboutAction();
  private static CloseAction closeAction = new CloseAction();
  private static OpenAction openAction = new OpenAction();
  private static SaveAction saveAction = new SaveAction();
  private static SaveAsAction saveAsAction = new SaveAsAction();
  private static CreateContainerElementAction createContainerAction = new CreateContainerElementAction();
  private static CreateBasicElementAction createBasicElementAction = new CreateBasicElementAction();
  private static CreateTanElementAction createTanElementAction = new CreateTanElementAction();
  private static DeleteContainerElementAction deleteContainerElementAction = new DeleteContainerElementAction();
  private static DeleteBasicElementAction deleteBasicElementAction = new DeleteBasicElementAction();
  private static SetPasswordAction setPasswordAction = new SetPasswordAction();
  private static PreferencesAction preferencesAction = new PreferencesAction();
  private static TogglePasswordVisibilityInTableAction togglePasswordVisibilityInTableAction = new TogglePasswordVisibilityInTableAction();
  private static AddPasswordToClibboardAction addPasswordToClibboardAction = new AddPasswordToClibboardAction();
  private static ExportPlainAction exportPlainAction = new ExportPlainAction();
  private static ExportContainerAction exportContainerAction = new ExportContainerAction();

  /**
   * getAboutAction
   *
   * @return Returns the aboutAction.
   */
  public static AboutAction getAboutAction() {
    return aboutAction;
  }

  /**
   * getCloseAction
   *
   * @return Returns the closeAction.
   */
  public static CloseAction getCloseAction() {
    return closeAction;
  }

  /**
   * getOpenAction
   *
   * @return Returns the openAction.
   */
  public static OpenAction getOpenAction() {
    return openAction;
  }

  /**
   * setOpenAction
   *
   * @param openAction The openAction to set.
   */
  public static void setOpenAction(OpenAction openAction) {
    ActionManager.openAction = openAction;
  }

  /**
   * getSaveAction
   *
   * @return Returns the saveAction.
   */
  public static SaveAction getSaveAction() {
    return saveAction;
  }

  /**
   * setSaveAction
   *
   * @param saveAction The saveAction to set.
   */
  public static void setSaveAction(SaveAction saveAction) {
    ActionManager.saveAction = saveAction;
  }

  /**
   * getSaveAsAction
   *
   * @return Returns the saveAsAction.
   */
  public static SaveAsAction getSaveAsAction() {
    return saveAsAction;
  }

  /**
   * setSaveAsAction
   *
   * @param saveAsAction The saveAsAction to set.
   */
  public static void setSaveAsAction(SaveAsAction saveAsAction) {
    ActionManager.saveAsAction = saveAsAction;
  }

  /**
   * getCreateContainerAction
   *
   * @return Returns the createContainerAction.
   */
  public static CreateContainerElementAction getCreateContainerAction() {
    return createContainerAction;
  }

  /**
   * setCreateContainerAction
   *
   * @param createContainerAction The createContainerAction to set.
   */
  public static void setCreateContainerAction(CreateContainerElementAction createContainerAction) {
    ActionManager.createContainerAction = createContainerAction;
  }

  
  /**
   * getCreateBasicElementAction
   *
   * @return Returns the createBasicElementAction
   */
  public static CreateBasicElementAction getCreateBasicElementAction() {
    return createBasicElementAction;
  }

  
  /**
   * setCreateBasicElementAction
   *
   * @param createBasicElementAction The createBasicElementAction to set.
   */
  public static void setCreateBasicElementAction(CreateBasicElementAction createBasicElementAction) {
    ActionManager.createBasicElementAction = createBasicElementAction;
  }

  /**
   * getDeleteContainerElementAction
   *
   * @return Returns the deleteContainerElementAction.
   */
  public static DeleteContainerElementAction getDeleteContainerElementAction() {
    return deleteContainerElementAction;
  }

  public static ExportContainerAction getExportContainerAction() {
    return exportContainerAction;
  }

  /**
   * getCreateTanElementAction
   *
   * @return Returns the createTanElementAction.
   */
  public static CreateTanElementAction getCreateTanElementAction() {
    return createTanElementAction;
  }

  /**
   * getDeleteBasicElementAction
   *
   * @return Returns the deleteBasicElementAction.
   */
  public static DeleteBasicElementAction getDeleteBasicElementAction() {
    return deleteBasicElementAction;
  }

  /**
   * getSetPasswordAction
   *
   * @return Returns the setPasswordAction.
   */
  public static SetPasswordAction getSetPasswordAction() {
    return setPasswordAction;
  }

  /**
   * getPreferencesAction
   *
   * @return Returns the preferencesAction.
   */
  public static PreferencesAction getPreferencesAction() {
    return preferencesAction;
  }

  /**
   * setPreferencesAction
   *
   * @param preferencesAction The preferencesAction to set.
   */
  public static void setPreferencesAction(PreferencesAction preferencesAction) {
    ActionManager.preferencesAction = preferencesAction;
  }

  
  /**
   * getTogglePasswordVisibilityInTableAction
   *
   * @return Returns the togglePasswordVisibilityInTableAction
   */
  public static TogglePasswordVisibilityInTableAction getTogglePasswordVisibilityInTableAction() {
    return togglePasswordVisibilityInTableAction;
  }

  
  /**
   * setTogglePasswordVisibilityInTableAction
   *
   * @param togglePasswordVisibilityInTableAction The togglePasswordVisibilityInTableAction to set.
   */
  public static void setTogglePasswordVisibilityInTableAction(
      TogglePasswordVisibilityInTableAction togglePasswordVisibilityInTableAction) {
    ActionManager.togglePasswordVisibilityInTableAction = togglePasswordVisibilityInTableAction;
  }

  
  /**
   * getAddPasswordToClibboardAction
   *
   * @return Returns the addPasswordToClibboardAction
   */
  public static AddPasswordToClibboardAction getAddPasswordToClibboardAction() {
    return addPasswordToClibboardAction;
  }

  
  /**
   * getExportPlainAction
   *
   * @return Returns the exportPlainAction
   */
  public static ExportPlainAction getExportPlainAction() {
    return exportPlainAction;
  }

  
  /**
   * setExportPlainAction
   *
   * @param exportPlainAction The exportPlainAction to set.
   */
  public static void setExportPlainAction(ExportPlainAction exportPlainAction) {
    ActionManager.exportPlainAction = exportPlainAction;
  }


}
